/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAO;

import Modele.Incident;
import java.util.ArrayList;

/**
 *
 * @author 20cent
 */
public interface IncidentDao {
    /**
     * Insérer un incident en BDD
     * @param incident
     * @param velo_id
     * @param typein_id
     * @throws DAOException 
     */
    void save(Incident incident, int velo_id, int typeinc_id)throws DAOException;
    
    /**
     * Méttre à jour un incident
     * @param incident
     * @param typeinc_id
     * @param technicien_id
     * @throws DAOException 
     */
    void update(Incident incident, int typeinc_id, int technicien_id) throws DAOException;
    
    /**
     * Récupérer un incident avec son ID
     * @param id
     * @throws DAOException 
     */
    Incident getByID(int id) throws DAOException;
    
    /**
     * Récupérer tous les incidents selon des filtres
     * @param champs noms des champs en BDD
     * @param valeurs valeur du filtre
     * @return
     * @throws DAOException 
     */
    ArrayList<Incident> getByFilter(String[] champs, String[] valeurs) throws DAOException;
    
}
